========================================================================= INFO-ATARI16 Digest Thu, 30 Nov 89 Volume 89 : Issue 728 Today's Topics: Cold Start diabling on board RAM (was: Mem upgrade (was:None)) Diff between TOS 1.0 and 1.2? High density Floppies on ST MAC pd/shareware EMULATORS Soz C V1.2 Upgrade help required ST/STE ROMs ST Environment variables. Help wanted. Uniterm 2.0e redialing hell ---------------------------------------------------------------------- Date: 30 Nov 89 12:03:38 GMT From: eru!luth!sunic!mcsun!unido!tub!tmpmbx!netmbx!hase@bloom-beacon.mit.edu (Hartmut Semken) Subject: Cold Start Message-ID: <3880@netmbx.UUCP> In article <4642@blake.acs.washington.edu> themod@blake.acs.washington.edu (Chris Hinton) writes: > Help! I have search high and low, through every manual I could lay my >grubby paws on, and yet I can find no documentation on how to perform a >cold start from software. If some kind soul out there can send me code >(C or Assembly preferable) I would be most appreciative. Alan Pratt (@atari) poste one program a while back. As far as I recall, it made the BUERR vector point to the same place, the RESET vector points to and then started to write 0L to any RAM adress from the first longword behind the program code (start of BSS?) up to 4M+1. Writing to this adress will cause a BUSERR, and BUSERR points to the coldstart routine (pointed to by RESET)... Any virus (or ramdisk) will die fromm the NULLs :-) hase -- Hartmut Semken, Lupsteiner Weg 67, 1000 Berlin 37 hase@netmbx.UUCP Dennis had stepped up into the top seat whet its founder had died of a lethal overdose of brick wall, taken while under the influence of a Ferrari and a bottle of tequila. (Douglas Adams; the long dark teatime...) ------------------------------ Date: 30 Nov 89 12:11:04 GMT From: eru!luth!sunic!mcsun!unido!tub!tmpmbx!netmbx!hase@bloom-beacon.mit.edu (Hartmut Semken) Subject: diabling on board RAM (was: Mem upgrade (was:None)) Message-ID: <3881@netmbx.UUCP> In article <24494@cup.portal.com> Bob_BobR_Retelle@cup.portal.com writes: >j.harris asks, about the DataFree memory upgrade board: >As for the problems locating the proper resistors to lift, I'm afraid I >can't offer any help. I don't remember seeing a Revision C board. I know >it's a long, long distance call, but it might be best to call DataFree and >see what they say about it... Probably, You are searching for the resistors to remove to disable half of the on board RAM. You have to remove just one resistor, the one in the RAS line (without RAS a RAM will stay in Tristate forever). RAS is pin 4 (four) of the 41 256 chips on the board and pin 3 (three) of the megabit chips. The RAS of the 256 chips must be disconnected from the MCU to disable them. hase -- Hartmut Semken, Lupsteiner Weg 67, 1000 Berlin 37 hase@netmbx.UUCP Dennis had stepped up into the top seat whet its founder had died of a lethal overdose of brick wall, taken while under the influence of a Ferrari and a bottle of tequila. (Douglas Adams; the long dark teatime...) ------------------------------ Date: 30 Nov 89 00:37:39 GMT From: hpl-opus!hpnmdla!hpsad!daveba@hplabs.hp.com (David Ballo) Subject: Diff between TOS 1.0 and 1.2? Message-ID: <750031@hpsad.HP.COM> Although I bought my Atari 1040ST in June of 1988, it appears to have TOS 1.0 in it instead of TOS 1.2 as I had expected. Would some knowledgeable person kindly outline the differences between these two TOS versions? Also, is it worth it to upgrade to TOS 1.4 (for a hundred bucks!)? Thanks, Dave Ballo HP, Signal Analysis Division R&D ------------------------------ Date: 30 Nov 89 12:22:34 GMT From: eru!luth!sunic!mcsun!unido!tub!tmpmbx!netmbx!hase@bloom-beacon.mit.edu (Hartmut Semken) Subject: High density Floppies on ST Message-ID: <3882@netmbx.UUCP> In article <1348@uvm-gen.UUCP> pegram@uvm-gen.UUCP (pegram r) writes: >Thanks for all the info, Abacus books bite the dust again. I'll get a Abacus Internals (or the german original, Atari ST Intern by Data Becker) was source of my wisdom as well :-) >HD 3.5 floppy drive and let the net know how my '85 520 likes it. My 1985 520 ST plus likes it :-) BTW, the WD1772 is specified to run at clock frequencies up to 10 MHz; 16 MHz is somewhat out of spec, but it works. I'm preparing a more detailled set of instructions how to use HD floppies with the ST. Hang on. As for the formatter: here ist goes (it's so short...) It was hacked from the example foramtter in the MWC Lexicon. it compiles with MWC; link with -VGEMAPP to exclude the long startup (if You wish). ---- /* formath.c Formatter fuer High Density Disketten */ /* nur fuer angepasste Hardware! Floppycontroller und Laufwerk */ /* muessen High-Density tauglich sein! */ /* Hartmut Semken, Lupsteiner Weg 67 1000 Berlin 37 */ /* hase@netmbx.UUCP */ /* 03-SEP-89 */ #include #include #include #define SLEEPTIME 1 /* 1: Zeitschleife, 0: Taste */ #define BLANK (0xE5E5) #define MAGIC (0x87654321L) #define BUFSIZE (20*1024) /* Platz fuer mehr als 18 Sektoren... */ #define DEVICE 0 /* 0 = Floppy A, 1 = Floppy B */ #define SIDES 2 /* je */ #define SECTORS 18 /* nach */ #define TRACKS 80 /*Belieben */ #define TOTSEC (TRACKS * SIDES * SECTORS) extern int errno; main()? int track; int side; int status; short *bf; register char reply; short *middle; char buffer[512]; printf("\033E\n"); printf("Public Domain High Density Mini Formatter\n"); printf("von H. Semken\nDer Autor garantiert in keiner Weise fr die Funktion\nDieses Programmes.\nBenutzung auf eigene Gefahr.\n"); printf("\n\n\n"); printf("\007\033pFormatiere Diskette in Drive %c\033q\n%d Seiten\n%d Sektoren pro Spur\n%d Spuren\n\n", (65+DEVICE), SIDES, SECTORS, TRACKS); printf("Wirklich formatieren? "); fflush(stdout); if ((reply = Crawcin()) != 'y' && reply != 'Y' && reply != 'j' && reply != 'J') ? printf("Nein. Floppy nicht formatiert.\n"); sleep(1); Pterm0(); ? printf("Ja.\n"); printf("Diskette einlegen; Taste drcken..."); fflush(stdout); Crawcin(); printf("\n"); bf = malloc(BUFSIZE); for (track = TRACKS-1; track >= 0; track--) ? for (side = 0; side < SIDES; side++) ? printf("Formatiere Spur %d, Seite %d", track, side); fflush(stdout); status = Flopfmt(bf, 0L, DEVICE, SECTORS, track, side, 1, MAGIC, BLANK); if (status) ? middle = bf; printf("\t%d\n", status); while (*middle) ? printf("\tDefekter Sektor %d\n", *middle++); ? ? else ? printf("\tokay\r"); ? ? ? printf("\n\nAlle Spuren formatiert\n"); printf("Initialisiere Directory\n"); for (track = 0; track < (BUFSIZE>>1); bf[track++] = 0); for (track = 0; track < 2;track++) ? for (side = 0; side < SIDES; side++)? if (status = Flopwr(bf, 0L, DEVICE, 1, track, side, SECTORS)) ? errno = -status; perror("Write Error"); ? ? ? Protobt(buffer, (long)Random(),3,0); /* Prototyp Bootsector fr * 80 * 2 * 9 Sektoren */ /* Prototyp Bootsektor fr das neue Format anpassen */ /* Bytes 19 und 20 enthalten die Sektoren pro Disk */ /* unteres Byte von TOTSEC */ buffer[19] = (char)(((TOTSEC>>8)<<8)~TOTSEC); /* oberes Byte von TOTSEC; es lebe das Intel int-Format */ buffer[20] = (char)(TOTSEC>>8); buffer[24] = (char)SECTORS; /* Sektoren pro Spur */ status = Flopwr(buffer, 0L, DEVICE, 1, 0, 0, 1); if (status) ? errno = -status; perror("Write Error (Bootsector)"); ? status = Flopver(buffer, 0L, DEVICE, 1, 0, 0, 1); if (status) ? errno = -status; perror("Verify Error (Bootsector)"); ? printf("Diskette in Laufwerk %c formatiert\n", (65+DEVICE)); sleep(1); Pterm0(); ? sleep(seconds) int seconds; #if SLEEPTIME ? clock_t t; for(t = clock();clock() < (t + CLK_TCK*seconds);); ? #else ? printf("Taste druecken\n"); fflush(stdout); Crawcin(); ? #endif ----- Set seek rate to 6 Milliseconds for *all* drives (with *any* TOS version; tested on Rainbow TOS, BLiTTER TOS and TO 1.0): / module name seek6 .shri .globl main_ main_: clr.l -(sp) move.w $0x20,-(sp) trap $1 addq.l $6,a7 move.l d0,_save_ssp move.w $0,0x440 / 0,1,2,3 => 6,12,2,3 Milliseconds lea 0x46a,a0 move.l (a0),d0 movea.l d0,a0 jsr (a0) move.l _save_ssp,-(sp) move.w $0x20,-(sp) trap $1 addq.l $6,a7 .even _save_ssp: .blkl 1 hase -- Hartmut Semken, Lupsteiner Weg 67, 1000 Berlin 37 hase@netmbx.UUCP Dennis had stepped up into the top seat whet its founder had died of a lethal overdose of brick wall, taken while under the influence of a Ferrari and a bottle of tequila. (Douglas Adams; the long dark teatime...) ------------------------------ Date: 30 NOV 89 09:37:25 CST From: Z4648252 Subject: MAC pd/shareware EMULATORS Message-ID: <891130.09372440.016777@SFA.CP6> Chill out folks, not to worry. I'd be skeptical of the thing working anyway. Assuming that the 'FREE MAC' is legally using Mac ROMs, it'd be an expensive project. Just trace the history of Magic Sac and Spectre. Not only will there have to be hardware development but also software driver development. And, as was earlier mentioned, the Magic Sac can be had for as cheap as $40.00. That would be a difficult product to beat for the price and it can do a lot of good things as long as 128k roms are not required for a particular application. As it is, I've the Spectre GCR and think it is worth the funds that I saved up for to buy it. For that money, I've gotten a professional product that WORKS, and support from Dave Small that makes me wish that he was in charge of Atari corp, shaping product development, but even more importantly, CUSTOMER/DEVELOPER RELATIONS. But, I'll stop. I could spend pages of typing in my defense and praise of David Small. If he and Fast Technologies were to team up and build their own computer, I'd buy it in a second. Larry Rymal: |East Texas Atari 68NNNers| ------------------------------ Date: Thu, 30 Nov 89 16:23:57 From: Rat Subject: Soz C V1.2 Upgrade help required (From "The Masked Rat Fink" "Computing and Informatics Yr4") Dear Netters, Being a beginning C programmer, I have managed to coax my copy of Sozobon Version 1.01 to compile, link and all that sort of stuff on single files. However I have not used anything other than the supplied CC utility, to drive all the other elements (hcc and top etc) and especially I haven't yet managed to get 'make' to work. This has slowed to a total halt my efforts to compile up the version 1.2 of Sozobon (supplied in source format only :-( I have tried to use the make facility on the supplied files. I had my normal Soz C work disk in the A drive and the 1.2 source in a ram disk, installed as drive d:. I then made the source files the active window and ran the make utility by selecting it using the right-left double click technique and then selecting open from the desktop. But it still didn't work. I would be mega obliged if someone could take the time to explain where I went wrong, so that I can actually perform the upgrade. I have no objections to anyone calling me a wally for getting something obvious wrong, but as far as C is concerned I have to ask these questions! :-) I do have a copy of the Gulam shell, but I haven't used it very much yet. However I will dig it out and blow the dust off it if necessary. Many thanks in advance TMRF PS To the authors of Sozobon, I read your request for news of anyone who was using your software. Well ... I'm trying to do my final year project in it, so I guess that I count as a user (perhaps a developer!?) of your product. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % Simon Chappell (The Masked Rat Fink) % % Computing and Informatics (Final Year), Polytechnic South West (Plymouth) % % % % "Better the pride that resides, in a citizen of the world, % % than the pride that divides, when a colourful rag is unfurled." % % - Neil Peart (RUSH) % % % % JANET S61304@uk.ac.psw.pa % % BITNET S61304@pa.psw.ac.uk % % INTERNET S61304%uk.ac.psw.pa@nsfnet-relay.ac.uk % % % %Disclaimer: I have no opinion, my wife wouldn't let me! % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ------------------------------ Date: 30 Nov 89 05:40:07 GMT From: portal!cup.portal.com!R_Tim_Coslet@uunet.uu.net Subject: ST/STE ROMs Message-ID: <24581@cup.portal.com> >Why didn't Atari use large ROMs for the 1040 in the first place? I don't know, but my GUESS is that Atari made the same "mistake" that the company I work for frequently makes... they underestimated the size of the code when they specified the amount of ROM space needed while designing the hardware, by the time they realized that they needed more ROM the hardware was "set in stone" and could not be changed... so they got an "expert code compression" type programmer to try to squeeze every byte out that they could thru ANY trick possible. This is probably also part of the reason the TOS sources are so "disorganized" and difficult to read. This happened on a machine that I worked on several years ago (and was especially bad). The system spec called for 50% unused ROM... software estimated the code could easilly fit in <2K, so the hardware was designed with 4K of ROM... However the first COMPLETE version of the code needed 5K!!! That took some VERY strange recodings to squeeze 5K of code into a 4K ROM. R. Tim Coslet Usenet: R_Tim_Coslet@cup.portal.com BIX: r.tim_coslet ------------------------------ Date: Thu, 30 Nov 89 16:36:50 From: Rat Subject: ST Environment variables. Help wanted. (From "The Masked Rat Fink" "Computing and Informatics Yr4") Dear Netters (again), Does anyone out there feel so disposed as to explain to a poor unfortunate about environment variables? 1 What are they? 2 Where are they stored? 3 What are the standard ones? (I've heard of PATH) 4 How do I use them from C (Sozobon in particular!) 5 How do I pass them to other programs? I'm learning slowly but surely, but haven't yet come across this information! May I also say that the technical articles that arrive in my mail box, through this group are very benificial and that I have learnt much. However the flames are just getting on my nerves! I seem to remember buying my ST for what it could do at that exact instance when I handed over my hard earned cash, not because I expected Atari to issue loads of wonderful add-ons (such as an 'Atari to PC missile :-) but because it was cheap, powerful and most importantly it had megs of software available at either reasonable or negligable prices (as well as all that scrummy p.d. and freeware!!). Thanks in advance, TMRF (Getting down off soapbox now! :-) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % Simon Chappell (The Masked Rat Fink) % % Computing and Informatics (Final Year), Polytechnic South West (Plymouth) % % % % "Better the pride that resides, in a citizen of the world, % % than the pride that divides, when a colourful rag is unfurled." % % - Neil Peart (RUSH) % % % % JANET S61304@uk.ac.psw.pa % % BITNET S61304@pa.psw.ac.uk % % INTERNET S61304%uk.ac.psw.pa@nsfnet-relay.ac.uk % % % %Disclaimer: I have no opinion, my wife wouldn't let me! % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ------------------------------ Date: Thu, 30 Nov 89 08:50:44 EST From: David Megginson Subject: Uniterm 2.0e redialing hell If you set retries to 0, Uniterm will continue to dial until it gets an answer. If you set retries to 1, Uniterm will try the number once; if you set it to 2, it will try the number twice; etc. David Megginson, Centre for Medieval Studies, Toronto ------------------------------ End of INFO-ATARI16 Digest V89 Issue #728 *****************************************